:root {
    --bounce-animate-duration: .3s;
    --bounce-animate-delay: 1s;
    --bounce-animate-repeat: 1;
}

.animate__animated {
    -webkit-animation-duration: .5s;
    animation-duration: .5s;
    -webkit-animation-duration: var(--bounce-animate-duration);
    animation-duration: var(--bounce-animate-duration);
    -webkit-animation-fill-mode: both;
    animation-fill-mode: both;
}

@keyframes bounce {

    from,
    to {
        -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
        animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
    }

    50% {
        -webkit-animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
        animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
        -webkit-transform: translate3d(0, -2px, 0);
        transform: translate3d(0, -2px, 0);
    }
}

.animate__bounce {
    -webkit-animation-name: bounce;
    animation-name: bounce;
    -webkit-transform-origin: center bottom;
    transform-origin: center bottom;
}